package com.itheima.service;

import com.itheima.entity.dto.setmeal.SetmealAddDto;
import com.itheima.entity.dto.setmeal.SetmealUpDto;
import com.itheima.entity.vo.setmeal.SetmealByIdVo;
import com.itheima.entity.vo.setmeal.SetmealDishVo;
import com.itheima.entity.vo.setmeal.SetmealListVo;
import com.itheima.entity.vo.setmeal.SetmealPageVo;

import java.util.List;

/**
 * @author huangzelnag
 * @create 2022-05-11
 */
public interface SetmealService {

    /**
     * 新增套餐
     * @param setmealAddDto
     * @return
     */
    Boolean addSetmeal(SetmealAddDto setmealAddDto);

    /**
     * 分页获取套餐列表
     * @param name
     * @param page
     * @param pageSize
     * @return
     */
    SetmealPageVo getSetmealPage(String name, Integer page, Integer pageSize);

    /**
     * 根据id获取套餐信息
     * @param id
     * @return
     */
    SetmealByIdVo getSetmealById(String id);

    /**
     * 更新套餐信息
     * @param setmealUpDto
     * @return
     */
    Boolean upSetmeal(SetmealUpDto setmealUpDto);

    /**批量删除**/
    Boolean delSetmeal(String[] idArry);

    /**
     * 批量启用或禁用
     * @param status
     * @param idArry
     * @return
     */
    Boolean upSetmealStatus(Integer status, String[] idArry);

    /**
     * 根据分类id和状态获取套餐列表
     * @param categoryId
     * @param status
     * @return
     */
    List<SetmealListVo> getSetmealList(String categoryId, String status);

    /**
     * 获取菜品详情
     * @param id
     * @return
     */
    SetmealDishVo getSetmealDish(String id);
}
